﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Connection
{
    public class FindUnicodeLetter
    {
        private static char[] SPECIAL_CHARACTERS = { ' ', '!', '"', '#', '$', '%', 
                        '*', '+', ',', '.', ':', '<', '=', '>', '?', '@', '[', '\\', ']', '^', 
                        '`', '|', '~', 'À', 'Á', 'Â', 'Ã', 'È', 'É', 'Ê', 'Ì', 'Í', 'Ò', 
                        'Ó', 'Ô', 'Õ', 'Ù', 'Ú', 'Ý', 'à', 'á', 'â', 'ã', 'è', 'é', 'ê',
                        'ì', 'í', 'ò', 'ó', 'ô', 'õ', 'ù', 'ú', 'ý', 'Ă', 'ă', 'Đ', 'đ',
                        'Ĩ', 'ĩ', 'Ũ', 'ũ', 'Ơ', 'ơ', 'Ư', 'ư', 'Ạ', 'ạ', 'Ả', 'ả', 'Ấ',
                        'ấ', 'Ầ', 'ầ', 'Ẩ', 'ẩ', 'Ẫ', 'ẫ', 'Ậ', 'ậ', 'Ắ', 'ắ', 'Ằ', 'ằ',
                        'Ẳ', 'ẳ', 'Ẵ', 'ẵ', 'Ặ', 'ặ', 'Ẹ', 'ẹ', 'Ẻ', 'ẻ', 'Ẽ', 'ẽ', 'Ế',
                        'ế', 'Ề', 'ề', 'Ể', 'ể', 'Ễ', 'ễ', 'Ệ', 'ệ', 'Ỉ', 'ỉ', 'Ị', 'ị',
                        'Ọ', 'ọ', 'Ỏ', 'ỏ', 'Ố', 'ố', 'Ồ', 'ồ', 'Ổ', 'ổ', 'Ỗ', 'ỗ', 'Ộ',
                        'ộ', 'Ớ', 'ớ', 'Ờ', 'ờ', 'Ở', 'ở', 'Ỡ', 'ỡ', 'Ợ', 'ợ', 'Ụ', 'ụ',
                        'Ủ', 'ủ', 'Ứ', 'ứ', 'Ừ', 'ừ', 'Ử', 'ử', 'Ữ', 'ữ', 'Ự', 'ự', 
                        'Ỵ', 'ỵ','Ỷ', 'ỷ', 'Ý', 'ý', 'Ỳ', 'ỳ', 'Ỹ', 'ỹ',};
        /*public static bool FindUnicode(char ch)
        {
            int index = Array.BinarySearch(SPECIAL_CHARACTERS, ch);
            return index >= 0 ? true : false;
        }*/

        public bool FindUnicode(String s)
        {
            char[] buffer = s.ToCharArray();
            for (int i = 0; i < buffer.Length; i++)
            {
                int index = Array.BinarySearch(SPECIAL_CHARACTERS, buffer[i]);
                if(index >= 0)
                    return true;
            }
            return false;
        }
    }
}
